<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 如果存储一个人的分数信息
        var data = ['yy' , 100 , 10 , 9 , 100 , 102] ;

        // 输出英语的分数
        console.log(data[3]);


        // 数组的缺陷   具有有序性  必须按照下标去访问值


        // 对象   键值对组成的    
        //    对象具有无序性
        //    只需要通过键名访问 
        //    键名具有唯一性 ， 如果重复，后面的覆盖前面的

        //   属性:属性值,  
        //   属性:属性值,

        //   属性一般用一个字符串表示  --- 不加引号
        //   属性值分数据类型  


        //   对象的键值的访问方式
        //      点语法    obj.name
        //      方括号语法   obj['name']  ***************   遇到变量的时候才会使用


        //   对象的遍历   for in



        // 声明对象

        var obj = {
            name : 'yy' , 
            age : 17 ,
            sex : '女' ,
            chinese : 100 ,
            math : 10 ,
            js : 102 ,
            name : 'cc' ,
            // 方法
            say : function() {
                console.log('hello world');
            }
        }


        console.log(obj.name);

        obj.say() ;



        var car = {
            name : 'BMW' ,
            color : 'black' ,
            price : '80W' ,
            run : function() {
                console.log('每公里15的油耗');
            }
        }


        console.log(car);

        // 对象的值的访问方式   
        //    点语法  对象.键名
        console.log(car.price);
        //    方括号语法   必须加引号
        console.log(car['price']) ;



        // 遍历对象  for in

        for(var key in car) {
            console.log(key);    // 键名
            // key 是一个变量的名字 
            console.log(car[key]);
        }





        // i j k  数字   index下标

        // n 数字  number   m n

        // arr  数组   array
        



        // var arr = {
        //     0 : 1 ,
        //     1 : 2 ,
        //     2 : 3 ,
        //     length : 3 ,
        //     push : function() {}
        // }

      

            // 标签也是对象
            // oInp.value 
            // oInp['value']

            // oUl.innerHTML 
            // oUl['innerHTML']


    </script>
    
</body>
</html>